home *** CD-ROM | disk | FTP | other *** search
/ Megahits 6 / Megahits 6 (1995)(GTI - Rhein-Main-Soft)(DE)(Disc 2 of 2)[!].iso / time_ungepackt / time_361_390 / time_387 / megafish / tools / mf-rexxscripts / 0815.mfish next >
Text File  |  1995-07-15  |  11KB  |  305 lines

  1. /*
  2. $VER: 0815.mfish v0.3 (C) Mega/Soft Ltd. (W) Stephan Bülling
  3. */
  4. ver="0815.mfish v0.3"
  5.  OPTIONS RESULTS
  6.  SIGNAL ON Break_C
  7.  options failat 999
  8.  cr=d2c(13)||d2c(10)
  9.   NL = '0a'x
  10.  'WaitForPort MFISH'
  11.  ADDRESS 'MFISH'
  12. if show('library','rexxreqtools.library') = 0 then do
  13.   call addlib("rexxreqtools.library", 0, -30, 0);end
  14. IF VERSION >= "Mega/Fish Amiga V1.23"
  15.  THEN CALL weiter
  16. ELSE
  17. njet1=rtezrequest(center("Sorry...",70)||NL||,
  18.            center("Du hast leider die Falsche Mega/Fish Version",50)||NL||,
  19.            center("um mit "ver" arbeiten zu können 8^(",50)||NL||,
  20.            CENTER(" ",70),"_ok|_About",""VER" ® Stephan Bülling");
  21. IF njet1= 1 then
  22.  EXIT
  23. IF njet2= 2 then call About
  24. About:
  25. rtezrequest(center(""VER"",70)||NL||,
  26.            center(" (W)1993-1995 Stephan Bülling ",50)||NL||,
  27.            center(" (C)1993-1995 Mega/Soft Ltd.",50)||NL||,
  28.            center("",50)||NL||,
  29.            center(" EMail: rubberduck@blanker.ruhr.de",50)||NL||,
  30.            center(" Dieses Programm ist PM-Ware (Brief-Ware)",50)||NL||,
  31.            CENTER(" ",70),"_Weiter",""VER"");
  32. EXIT
  33. weiter:
  34.   if ~Show(P,'MFISH') then do
  35.     Say cr||cr||""ver" (w) 1994 Stephan Bülling"||cr
  36.     Say "MegaFish muß zuerst gestartet werden!"||cr
  37.     options PROMPT "Ende mit <RETURN>"
  38.     pull it
  39.     exit
  40.   end
  41. ELSE
  42. txt1="Die Daten wurden geändert"
  43. txt2="INDEX Sichern ?"
  44. /*|||*/
  45. CSI = "9b"x;GREY = CSI||"30m";BLACK = CSI||"31m";
  46. WHITE = CSI||"32m";BLUE = CSI||"33m";BGREY = CSI||"40m";BBLACK = CSI||"41m";
  47. BWHITE = CSI||"42m";BBLUE = CSI||"43m";CLSWIN = CSI||"H"||CSI||"J";
  48. CUP = CSI||"A";CDOWN = CSI||"B";CLEFT = CSI||"D";CRIGHT = CSI||"C";
  49. BOLDON  = CSI||"1m";BOLDOFF = CSI||"22m";
  50. /*|||*/
  51. MENU:
  52. /*|||*/
  53. STATUS PROJECTNAME;serie=RESULT;SAY CLSWIN||""||cr
  54. SAY WHITE||BOLDON||"               "ver" (w) 1994 Stephan Bülling"||BOLDOFF
  55. SAY"                    0815 ist PMWare (BriefWare)"||CR
  56. SAY BLUE||"             was möchst du mit der Serie: "WHITE||serie||BLUE" machen "WHITE||?||BLUE""
  57. SAY COPIES("-",79);
  58. SAY BOLDON||WHITE||" 1"||BOLDOFF||BLUE" Lösche Alle Besitzmarkierungen "
  59. SAY BOLDON||WHITE||" 2"||BOLDOFF||BLUE" Setze Diskette(n) auf Besitz   "
  60. SAY BOLDON||WHITE||" 3"||BOLDOFF||BLUE" Setze Alle Disketten auf Besitz"
  61. SAY BOLDON||WHITE||" 4"||BOLDOFF||BLUE" Zeige Status der Serie "serie" "
  62. SAY BOLDON||WHITE||" 5"||BOLDOFF||BLUE" Schreibe Liste von nicht vorhandenen Disketten ( "WHITE||D||BLUE"=Drucken "WHITE||Z||BLUE"=Zeigen )"
  63. SAY BOLDON||WHITE||" 6"||BOLDOFF||BLUE" Suche Lücken in Disketten Daten "
  64. SAY BOLDON||WHITE||" 7"||BOLDOFF||BLUE" Lösche Alle Markierungen "
  65. SAY BOLDON||WHITE||" 8"||BOLDOFF||BLUE" Öffne neue Serie "
  66. SAY BOLDON||WHITE||" 0"||BOLDOFF||BLUE" ENDE "
  67. SAY COPIES("-",79);OPTIONS PROMPT WHITE||" Kommando ? :> "
  68. PARSE UPPER PULL kommando;if kommando="" then call menu
  69. /*|||*/
  70. SELECT
  71. /*|||*/
  72. WHEN kommando='?' THEN CALL a?
  73. WHEN kommando='0' THEN CALL a0
  74. WHEN kommando='1' THEN CALL a1
  75. WHEN kommando='2' THEN CALL a2
  76. WHEN kommando='3' THEN CALL a3
  77. WHEN kommando='4' THEN CALL a4
  78. WHEN kommando='5' THEN CALL a5
  79. WHEN kommando='D' THEN CALL ad
  80. WHEN kommando='Z' THEN CALL az
  81. WHEN kommando='6' THEN CALL a6
  82. WHEN kommando='7' THEN CALL a7
  83. WHEN kommando='8' THEN CALL a8
  84. OTHERWISE call a?
  85. /*|||*/
  86. a0: /* Quit */
  87. /*|||*/
  88. GOTO TOP
  89. IF ak= "1" THEN CALL SINDEX
  90. ELSE
  91. drop ak
  92. EXIT
  93. /*|||*/
  94. a1: /* Lösche ALLE Besitzmarkierungen */
  95. /*|||*/
  96.  ak="1"
  97.  say CLSWIN||""||BLACK||cr
  98.  SETPREF CASEOFF OLDTONEW;STATUS PROJECTNAME;serie=RESULT;STATUS OWNDISK;all=RESULT
  99.  SAY "           Abruch mit CTRL C "
  100.  SAY cr||" Lösche Besitzmarkierung von der Serie "serie
  101.  GOTO TOP;DO FOR all;FLAG CLEAR OWNDISK;NEXT OWN;FLAG CLEAR OWNDISK
  102.  END;SETPREF CASEOFF NEWTOOLD;CALL MENU
  103. /*|||*/
  104. a2: /* Setze Disketten auf Besitz */
  105. /*|||*/
  106. say CLSWIN||""||BLACK||cr;SETPREF CASEOFF NEWTOOLD;FIND ALL;
  107. GOTO TOP;QUERY DISK;di=RESULT
  108. sdisk:;DROP xx xy;FIND ALL;
  109. QUERY DISK;di=RESULT;STATUS DISK;diske=RESULT
  110. say CLSWIN||"";SAY CLSWIN||"";
  111. SAY CENTER(""WHITE||"X"BLUE||" = Ende "WHITE||"H"||BLUE" = Hilfe",99)||CR
  112. SAY CENTER("Gebe Diskettennummer(n) ein, die auf Besitz markiert werden sollen",79)||CR||BLACK
  113. OPTIONS PROMPT "Diskette Nummer :>";
  114. PULL xx yy;xx= strip(xx);yy= strip(yy);
  115. IF xx = h then CALL Hilfe;
  116. IF xx = x then CALL MENU;IF xx = "" then call Hilfe;
  117. IF yy = "" then Call Hilfe
  118. IF xx = yy THEN DO;
  119. GOTO DISK xx
  120. FLAG SET OWNDISK
  121. ak="1"
  122. CALL sdisk
  123. END
  124. IF xx > yy then do;xy=xx-yy;
  125. DO FOR xy;GOTO DISK xx
  126. FLAG SET OWNDISK;xx=xx-1;GOTO DISK xx;
  127. FLAG SET OWNDISK;END;
  128. CALL sdisk;END;IF xx < yy then do;
  129. IF xx <= "1" then;xy=yy-xx;
  130. ELSE;xy=yy-xx;end;
  131. DO FOR xy;
  132. GOTO DISK xx;FLAG SET OWNDISK;xx=xx+1;
  133. GOTO DISK xx;FLAG SET OWNDISK;
  134. END;FIND ALL;
  135. CALL sdisk;OTHERWISE;END;hilfe:
  136. SAY CLSWIN||"";SAY CENTER(""WHITE||"X"BLUE||" = Ende",89)||CR;
  137. didi=di-10;
  138. SAY CENTER("Gebe Diskettennummer(n) ein, die auf Besitz markiert werden sollen",79)||CR
  139. SAY CENTER("z.B",79)||BLACK||CR;SAY CENTER("( "BOLDON||di||BOLDOFF||WHITE" <space> "BLACK||BOLDON||didi||BOLDOFF" ) markiert die Disketten von "BOLDON||di||BOLDOFF"-"BOLDON||didi"",110)||BOLDOFF||CR;didi=di-5
  140. SAY CENTER("( "BOLDON||didi||BOLDOFF||WHITE" <space> "BLACK||BOLDON||di||BOLDOFF" ) markiert die Disketten von "BOLDON||didi||BOLDOFF"-"BOLDON||di"",110)||BOLDOFF||CR;
  141. SAY CENTER("( "BOLDON||di||BOLDOFF||WHITE" <space> "BLACK||BOLDON||di||BOLDOFF" ) Markiert die Diskette "BOLDON||di||BOLDOFF"",110)||CR;OPTIONS PROMPT " <Taste>";PULL it;CALL SDISK
  142. /*|||*/
  143. a3: /* Setze Alle Disketten auf Besitz */
  144. /*|||*/
  145.  ak="1"
  146.  say CLSWIN||""||BLACK||cr; ADDRESS 'MFISH';STATUS PROJECTNAME;serie=RESULT
  147.  STATUS DISK;dall=RESULT; SAY "           Abbruch mit CTRL-C "
  148.  SAY cr||" Setze alle Disketten auf Besitzmarkierung von der Serie "serie
  149.  GOTO TOP; DO FOR dall;  FLAG SET OWNDISK;  NEXT DISK;END;CALL MENU;END
  150. /*|||*/
  151. a4: /* Status */
  152. /*|||*/
  153.  say CLSWIN||""||BLACK||cr
  154.  STATUS PROJECTNAME;project=RESULT
  155.  STATUS PROG;prg=RESULT
  156.  STATUS DISK;diske=RESULT
  157.  STATUS MARK;mar=RESULT
  158.  STATUS OWNDISK;ownd=RESULT
  159.  SAY "          Mega/Fish STATUS "||cr||BLUE
  160.  SAY COPIES("-*-",15)
  161.  SAY cr||BLACK||" Aktuelle Serie:        :"||WHITE project
  162.  SAY cr||BLACK||" Anzahl der Programme   :"||WHITE prg
  163.  SAY cr||BLACK||" Anzahl der Disketten   :"||WHITE diske
  164.  SAY cr||BLACK||" Davon markiert         :"||WHITE mar
  165.  SAY cr||BLACK||" Davon im Besitz        :"||WHITE ownd""
  166.  SAY cr||BLACK||" Es fehlen dir noch     :"||WHITE diske-ownd ||BLACK "Disketten"||CR||BLUE
  167.  SAY COPIES("-*-",15)||cr
  168.  SAY BLACK||"       ® Stephan Bülling 1994 "
  169. OPTIONS PROMPT cr||"Weiter mit RETURN :> ";PARSE UPPER PULL
  170. CALL MENU
  171. END       
  172.  OTHERWISE
  173. END
  174. /*|||*/
  175. a5: /* Schreibe Liste */
  176. /*|||*/
  177.  say CLSWIN||""||BLACK||cr;GOTO TOP;SETPREF CASEOFF OLDTONEW
  178. STATUS PROJECTNAME;serie=RESULT;STATUS DISK;DD=RESULT;
  179. STATUS OWNDISK;ow=RESULT;l=dd-ow
  180. SAY "Schreibe Liste in`s RAM: (FileListe.txt ) mom...."||cr
  181. open(bs,"RAM:Fileliste.txt",W);Writeln(bs," ");
  182. Writeln(bs," Fileliste von der Serie "serie"");Writeln(bs," ");
  183. DO FOR dd;
  184. QUERY DISK;di=RESULT;
  185. QUERY OWN;tmp=RESULT;
  186. IF tmp="#";THEN Writeln(bs,"-");ELSE Writeln(bs," Diskette # "di"");
  187. NEXT DISK;DROP di;END;
  188. Writeln(bs,"");
  189. Writeln(bs," Anzahl der nicht vorhandenden Disketten "l" ");
  190. Writeln(bs,"");
  191. Close(bs);say cr||" Anzahl der nicht vorhandenden Disketten "l""||cr
  192. SETPREF CASEOFF NEWTOOLD;
  193. FIND ALL;
  194. OPTIONS PROMPT cr||"Weiter mit RETURN :> ";
  195. PARSE UPPER PULL;
  196. Break_C:;
  197. SETPREF CASEOFF NEWTOOLD;
  198. CALL MENU;
  199. END
  200. /*|||*/
  201. a6: /* Suche Lücken in Disketten nummern */
  202. /*|||*/
  203. say CLSWIN||""||BLACK;SETPREF CASEOFF OLDTONEW;FIND ALL;GOTO TOP
  204. STATUS PROJECTNAME;serie=RESULT;STATUS DISK;DD=RESULT;STATUS OWNDISK;ow=RESULT;
  205. SAY "Mom.... Suche Lücken in Disketten nummern "||CR
  206. DO FOR dd
  207. DROP di
  208. QUERY DISK;di=RESULT;
  209. di=di+1;
  210. NEXT DISK;QUERY DISK;nr=RESULT
  211. IF nr ~= di then say " Diskette "BOLDON||"( "di" )"||BOLDOFF" Fehlt in der Serie:"BLUE||" "serie""||BLACK""||CR
  212. DROP di;
  213. END;
  214. OPTIONS PROMPT cr||"Weiter mit RETURN :> ";
  215. PARSE UPPER PULL
  216. SETPREF CASEOFF NEWTOOLD;
  217. FIND ALL;
  218. CALL MENU;
  219. OTHERWISE;END
  220. /*|||*/
  221. a7: /* Lösche ALLE Markierungen */
  222. /*|||*/
  223.  ak="1"
  224.  say CLSWIN||""||BLACK||cr
  225.  SETPREF CASEOFF OLDTONEW;STATUS PROJECTNAME;serie=RESULT;STATUS MARK;mall=RESULT
  226.  SAY "           Abruch mit CTRL C "
  227.  SAY cr||" Lösche Markierung von der Serie "serie
  228.  GOTO TOP;DO FOR mall;FLAG CLEAR MARK;NEXT MARK;FLAG CLEAR MARK
  229.  END;SETPREF CASEOFF NEWTOOLD;CALL MENU
  230. /*|||*/
  231. a8: /* Öffnet Serie */
  232. /*|||*/
  233. IF ak = "1" then CALL sindex
  234. ELSE
  235. drop ak
  236. ak="0"
  237. STATUS PROJECTNAME;project=RESULT;STATUS ALLDIRS;aserien=RESULT;say clswin||"";
  238. SAY CENTER(" "ver" (c) Stephan Buelling '94",79)||WHITE;SAY COPIES("-",79)||BLACK;
  239. SAY CENTER("Anzahl der gefundenden Serien "aserien"",79)||WHITE;
  240. SAY COPIES("-",79)||BLACK||cr;
  241. snum=1;
  242. DO i=1 TO aserien;
  243. PROJECTNAME i;
  244. dataname=RESULT;
  245. SAY " "snum||BLUE" = "WHITE||dataname||BLACK"";
  246. snum=snum+1;END;
  247. OPTIONS PROMPT cr||BBLACK||WHITE||"  Welche Serie... ? :> "||BGREY||BLACK;
  248. PARSE UPPER PULL laden;
  249. i=laden;
  250. PROJECTNAME i;
  251. SAY CLSWIN||cr||"Lade die Serie "RESULT;
  252. OPENDIR RESULT;
  253. serie=RESULT;
  254. call menu;END
  255. /*|||*/
  256. ad: /* Drucke Liste */
  257. /*|||*/
  258. ADDRESS COMMAND "copy ram:"serie"-liste.txt PRT:"
  259. CALL MENU
  260. /*|||*/
  261. az: /* Zeige Liste (More) */
  262. /*|||*/
  263. say CLSWIN||""||BLACK
  264. ADDRESS COMMAND "More ram:Fileliste.txt"
  265. CALL MENU
  266. /*|||*/
  267. a?:
  268. /*|||*/
  269. say CLSWIN||cr||"";
  270. say CENTER(""ver" (C)1993-1995 Mega/Soft Ltd.",70)
  271. say CENTER(""ver" (W)1993-1995 Stephan Bülling",70)||BLUE||BOLDON||CR
  272. say CENTER("Alle Rechte vorbehalten  ",70)||CR||WHITE||BOLDOFF
  273. say CENTER("0815 ist PMWare (BriefWare)",70)||CR||BOLDON
  274. say CENTER("bei regelmäßiger Benutzung des ARexx Scrips",70)
  275. say CENTER("ist an den Autor ein PM (Brief) zu entrichten.",70)||CR||BOLDOFF||WHITE
  276. say CENTER("Autor     : Stephan Bülling",70)
  277. say CENTER("Anschrift : Schüruferstr.147",70)
  278. say CENTER("44269 Dortmund",80)||CR||BLACK||BOLDON
  279. say CENTER("EMail     : rubberduck@sid.anubis.sub.de",70)||BOLDOFF
  280. say CENTER("rubberduck@blanker.ruhr.de",80)||CR||BOLDON
  281. say CENTER("Mailbox   : +49 231 448496",70)||BOLDOFF
  282. say CENTER("+49 231 815739",82)||BOLDON||CR
  283. say CENTER("Die Weiterentwicklung des Scrips",70)
  284. say CENTER("hängt stark davon ab,",70)
  285. say CENTER("wieviele PM`s (Briefe) ich bekomme",70)||BOLDOFF
  286. options PROMPT CR||"Weiter mit <RETURN>";pull it;call Menu
  287. /*|||*/
  288. sindex:
  289. /*|||*/
  290. sichern1=rtezrequest(center("!! ACHTUNG !!",70)||NL||,
  291.                      center(""txt1"",70)||NL||,
  292.                      center(""txt2"",70)||NL||,
  293.                      center(" ",70),"_Speichern|_Nein",""VER" (w) by Stephan Bülling");
  294. IF sichern1= 1 then
  295.  SAVE
  296. RETURN
  297. IF sichern2= 2 then
  298. RETURN
  299. /*|||*/
  300. Break_C:
  301. /*|||*/
  302. CALL Menu
  303. /*|||*/
  304.  
  305.